#ifndef K_EXCEPTION_H
#define K_EXCEPTION_H
#pragma once

#include <exception>
#include <string>

class KException : public std::exception {
public:
    explicit KException(const std::string &description) : m_msg(description) {}
    virtual ~KException() throw() {}
public:
    virtual const char *what() const throw() { return m_msg.c_str(); }
private:
    std::string m_msg;
};

#endif // K_EXCEPTION_H